.

iT邦幫忙

2024 iThome 鐵人賽

DAY 25
0
Python

python介紹系列 第 25

Python進階語法(八)

  • 分享至 

  • xImage
  •  

使用 shutil 處理文件操作
shutil 提供了高級的文件和目錄操作,包括複製、移動、壓縮等功能。
import shutil

shutil.copy("source.txt", "destination.txt")
shutil.move("file.txt", "new_folder/")
這個模組讓你在需要大量文件操作時,可以事半功倍。

getattr() 和 setattr()
這兩個方法讓你可以動態取得和設置對象的屬性,有時候比直接用點操作更靈活。
class Person:
def init(self, name):
self.name = name

p = Person("Alice")

print(getattr(p, "name")) # 取得屬性,輸出:Alice
setattr(p, "name", "Bob") # 設置屬性
print(p.name) # Bob
這樣可以動態操作屬性,適合處理一些不確定的屬性需求。

延遲加載 (Lazy Loading)
有時候我們需要在程式開始時節省內存或加快加載速度,這時可以用 importlib 來延遲加載模組。
import importlib

numpy = importlib.import_module("numpy")
print(numpy.array([1, 2, 3]))
這樣只有當程式需要使用 numpy 時,才會真正去加載它。

call 方法
你可以定義一個類,使其實例像函數一樣被調用。
class Adder:
def init(self, x):
self.x = x

def __call__(self, y):
    return self.x + y

add_five = Adder(5)
print(add_five(10)) # 15
這讓你可以將對象變得像函數一樣,可以直接調用。


上一篇
Python進階語法(七)
下一篇
Python進階語法(九)
系列文
python介紹30
.
圖片
  直播研討會

尚未有邦友留言

立即登入留言